package calcsdk;

/**
 *
 * @author Develop
 */
public interface ICTree {
        //Инициализация класса
        int     Init(float[] mas[], int size, BinVer ver_ver, BinVer ver_hor, int lev, char f, BinMar mar, int cnt_mar, BinVer mar_beg, BinVer mar_end, CTree pred);
        int     InitPorog(float p);
        int     InitCut(BinMar mar_cut, int cnt_mar_cut);
        //Обработка матрицы
        int     Process_matrix();
        int     CalcPorog(BinVer ver_beg, BinVer ver_end, float[] n_porog);
        int     Resize_matrix(float[][] mas, int ii, int jj);
        int     Resize_matrix_str(float[][] mas, int ii, int jj, int bjj, int size);
        int     Resize_matrix_stolb(float[][] mas, int ii, int jj, int bii, int size);
        int     Find(BinVer mas_ver, int ver);
        int     Check_block();
//        int     Check_fict_str(int i_max);
//        int     Check_fict_stolb(int i_max);
        int     Resize_mas_ver(BinVer mas_ver, int ii, BinVer new_mas_ver);
        int     AddFictVer(BinVer mas_ver_beg, BinVer mas_ver_end, int i, int size);
        int     LoadMatrix(float[][] mas, float[] ver, int size, BinVer ver_ver, BinVer ver_hor, float[][] mas_dist);
        int     Delete();
        int     DeleteMatrix();
        //Работа с файлом
        int     WriteMatrix(int ii);
        int     WriteStr(String str);
        int     WriteMas(float[][] mas, int size);

        //Симуляция
        int     Sim();
        float   GetPorog();
}